package busenum

// @schema_go
// @schema_ts
// @alias 得分标旗
type E得分标旗 int

const (
	//
	E得分标旗_允许自动开始 E得分标旗 = 1
	//
	E得分标旗_允许达到最大值后仍派发事件 = 2
	//
	E得分标旗_允许达到最大值时自动重置 = 3
	E得分标旗_禁止保存         = 4
)

// @schema_go
// @schema_ts
// @alias 统计标旗
type T统计标旗 int

const (
	//
	T统计标旗_允许自动开始 T统计标旗 = iota
	//
	T统计标旗_允许达到最大值后仍派发事件
	//
	T统计标旗_允许达到最大值时自动重置
	T统计标旗_禁止保存
)

// @schema_go
// @schema_ts
// @alias 登陆计算方式
type S登陆计算方式 int

const (
	S登陆计算方式_次数 S登陆计算方式 = iota
	S登陆计算方式_离线时长
)

// @schema_go
// @schema_ts
// @alias 时间统计方式
type S时间统计方式 int

const (
	S时间统计方式_与开始时间间隔 S时间统计方式 = iota

	S时间统计方式_在线时长
	S时间统计方式_到达时刻
)

// @schema_go
// @schema_ts
// @alias 时间间隔单位
type S时间间隔单位 int

const (
	S时间间隔单位_秒 S时间间隔单位 = iota
	S时间间隔单位_分
	S时间间隔单位_时
)

// @schema_go
// @schema_ts
// @cache_go
// @cache_ts
type T统计标识 string

const (
	T统计标识_登陆 T统计标识 = "登陆"
	T统计标识_时长 T统计标识 = "时长"
)

// @schema_go
// @schema_ts
// @cache_go
// @cache_ts
type T统计任务范围 int

const (
	T统计任务范围_仅包括任务 T统计任务范围 = iota
	T统计任务范围_仅包括子任务
	T统计任务范围_包括任务和子任务
)

// @schema_export --ident=schema --json
// @schema_go
// @schema_ts
type T统计状态 int

const (
	T统计状态_未知  T统计状态 = 0
	T统计状态_已关闭 T统计状态 = 1
	T统计状态_已开始 T统计状态 = 2
)

// @schema_go
// @schema_ts
// @alias 统计重置变量
type T统计重置变量 int

const (
	T统计重置变量_开始时间 T统计重置变量 = iota
	// 得分可以由多个统计计算，因此多个的情况，通常不需要重置得分
	// 单个的情况通常同时重置得分
	T统计重置变量_得分
)

// @schema_export --ident=schema --json
// @schema_go
// @schema_ts
type E得分保存主体 int

const (
	E得分保存主体_角色  E得分保存主体 = 2
	E得分保存主体_玩家  E得分保存主体 = 3
	E得分保存主体_队伍  E得分保存主体 = 4
	E得分保存主体_团队  E得分保存主体 = 5
	E得分保存主体_公会  E得分保存主体 = 6
	E得分保存主体_游戏服 E得分保存主体 = 7
)
